let fs = require('fs')
let path = require('path')
let WriteSteam = require('./WriteStream')
let ws = new WriteSteam(path.resolve(__dirname, 'wirte.txt'), {
  flags: 'w', // 打开文件做什么事 r w r+...
  highWaterMark: 2, // 1个字节  默认是16K
  mode: 0o666, // 文件权限
  encoding: 'utf8',
  autoClose: true, // fd什么的属性  那就是自己open一个文件
})

// 读一会写一会
// 可写流 open close wirte on('diran')

// 返回的flag表示是否还能写入  写入的长度 大于 highWaterMark 就不行了
// 不代表是否写入成功
// let flag = ws.write('11111')
// console.log(flag)


// 
let i= 9;
function write() {
  let flag = true
  while(i>-1 && flag) {
    flag = ws.write(''+i--)
  }
}
write()
// 这个事件是 重新又可以写入了
ws.on('drain', () => {
  console.log('drain')

  write()
})